# 拷贝不可变对象：只是增加一个指向原对象的引用，改变会互相影响
import copy
# # a = (1,2,[3,4])
# # b = copy.copy(a)
# # b[2].append(5)
# # print(a)
# # print(b)
# 拷贝可变对象(一层结构)：产生新的对象，开辟新的内存空间，改变互不影响。
a = [1,2,[3,4]]
b = copy.copy(a)
print(id(a))
print(id(b))
print(a is b)
b.append(0)
print(a)
print(b)
# 拷贝可变对象(多层结构)：产生新的对象，开辟新的内存空间，不改变包含的子对象则互不影响、改变包含的子对象则互相影响。
# a = [1, 2, 3]
# b = copy.copy(a)
# print(b)
